Docker 删除镜像

1 背景知识

可以使用 docker rmi 命令删除某个镜像。

2 删除镜像

2.1 使用自定义标签,删除镜像

docker rmi kcp:7.2.1511

2.2 使用名称,删除镜像

docker rmi centos:7.2.1511

2.3 使用镜像 ID,删除镜像

docker rmi 9aec5c5fe4ba

3 镜像上有容器依赖,删除失败

当镜像上有容器依赖时,会删除失败,需要解决依赖关系或者强制删除。

3.1 查看当前容器的运行状态

[root@node1 ~]#  docker ps -a
CONTAINER ID   IMAGE                      COMMAND                  CREATED       STATUS                         PORTS                                           NAMES
f9ec9123e9f4   5d0da3dc9764               "/bin/bash"              6 hours ago   Restarting (0) 5 seconds ago                                                   pensive_shirley
83a97d7e63a3   chyi

3.2 删除正在被使用的镜像文件,报错

[root@node1 ~]# docker rmi chyiyaqing/kingbase:v8r6
Error response from daemon: conflict: unable to remove repository reference "chyiyaqing/kingbase:v8r6" (must force) - container 83a97d7e63a3 is using its referenced image 10718399d4a5

3.3 删除依赖该镜像的所有容器

$ docker rm 83a97d7e63a3

3.4 成功删除镜像

[root@node1 ~]# docker rmi chyiyaqing/kingbase:v8r6
Warning

当该镜像创建的容器存在时,镜像文件默认无法被删除。如果想要强制删除,请执行以下命令:

docker rmi -f chyiyaqing/kingbase:v8r6